黑苹果必读FAQ

您所在的位置:网站首页 黑苹果dsmos has arrived重启 黑苹果必读FAQ

黑苹果必读FAQ

2023-12-15 17:14| 来源: 网络整理| 查看: 265

本帖最后由 p.H 于 2012-5-22 18:24 编辑

原文链接:http://www.insanelymac.com/forum/index.php?showtopic=277344

Credits to  PookyMacMan@InsanelyMac

Kext是什么? Kext是Kernel extension(内核拓展)的缩写,它相当于Windows下的“驱动” Kexts在哪? Kexts通常是在/System/Library/Extensions目录下(中文系统对应:/系统/资源库/Extensions,以下简称/S/L/E) 但如果你使用的是雪豹或者更老的Mac系统(或者一些自定义过的Lion系统) Kexts也有可能在/Extra/Extensions(以下简称/E/E)下出现 Kext如何安装?安装到哪个路径?

大部分时候,选择路径是随意的

除非你的Kext有特殊指明特定的安装路径

/E/E下的Kexts是要取代/S/L/E下同名的驱动的例如(IOATAFamily)

/E/E下的Kexts版本必须比/S/L/E下同名驱动版本高(这个可以在Kext的Info.plist里面检查)

那些有许多依附关系的Kext需要安装到/S/L/E下,也就是他们需要许多其他驱动已经加载的前提下才会加载

而那些有可能在更新中被Apple原装驱动替换的Kext(例如IONetworkingFamily)则应该放在/E/E下

如果你还是感到困惑的话,那就自己尝试一下看看哪个适用于你

而安装Kexts的方法则取决于你所要安装的位置 对于/S/L/E来说,系统会严格根据它的权限来决定是否加载 所以你如果只是简单的把驱动拖到/S/L/E下那样是不够的 你还需要打开终端机(应用程序->实用工具)并且执行下列指令: cd /System/Library/Extensions chmod 775 驱动名.kext chown root:wheel 驱动名.kext复制代码这样你的权限就正确了 如果你觉得终端机指令麻烦的话,那你可以使用第三方软件来安装驱动 我推荐使用Kext Utility,Kext Utility v2.5.1- 支持10.8 KextWizard同样可以使用, Kext Wizard.zip (369.1 KB, 下载次数: 1261) 2012-4-27 08:42 上传 下载次数: 1261 下载积分: PB币 -1 请勿使用多线程下载工具下载论坛附件! 如果你是安装到/E/E下,好消息是这里没有上述的权限的问题 只要把驱动移动到E/E下应该就成功安装了 只要你安装了新驱动,那么你必须重新启动 重启之后在开机选择菜单的时(按任意键显示菜单),输入“-f”之后回车 这将重建你的系统缓存 有时候安装Kext的过程中,系统会默认重建缓存 但建议最好手动确认一遍,修复磁盘权限,重建缓存 当然,手动重建了之后,就不需要-f参数了 重建缓存要等待一会,毕竟这不是瞬间就完成的事 Kext如何patch? 首先你必须知道你的kext所在路径,它是在/E/E下还是/S/L/E呢? 当你知道了之后打开终端机根据你的kext的路径,选择下面一条指令执行: sudo nano /System/Library/Extensions/kext名.kext/Contents/Info.plist sudo nano /Extra/Extensions/kext名.kext/Contents/Info.plist复制代码如果你是要给kext里面的一个插件(plugin,)patch的话,那你需要将上面的指令做一点修改注意:插件也是一个Kext sudo nano /System/Library/Extensions/kext名.kext/Contents/PlugIns/插件名.kext/Contents/Info.plist sudo nano /Extra/Extensions/kext名.kext/Contents/PlugIns/插件名.kext/Contents/Info.plist复制代码通常情况下我们patch Kext的时候就是把你的PCI ID写入驱动当中 (PCI ID的问题请参考:章节一-VendorID与DeviceID) 通过键盘的方向键翻页并找到IOPCIPrimaryMatch或者IOPCINameMatch 如果发现找不到上述的两个键值,但能够找到IOPCIClassMatch的键值 那么把IOPCIClassMatch改为IOPCIPrimaryMatch 在名字后面,你应该至少能看到一串以0x开头的数字 除非是之前所说的IOPCIClassMatch的情况下,将会是pci而不是0x 删除所有的内容(包括&)并将你的ID按照0x [deviceID][vendorID]的顺序输入 同样,如果是IOPCIClassMatch的情况的话,改为pci[vendorID], [deviceID] 举个例子,如果你有vendor ID为8086(Intel)且Device ID为27dc的有线网卡 那你就应该输入0x27dc8086 如果是IOPCIClassMatch的情况,那么输入pci8086,27dc 完成之后,按下Control+O(保存)和Control+X(退出) 重启,-f进入就可以了 上面所说的是涉及终端的方法,或许你觉得太繁琐了,也有很直观简便的方法 安装PlistEdit Pro,专门用来编辑plist文件的工具 PLP173.zip (3.08 MB, 下载次数: 4009) 2012-4-27 08:49 上传 下载次数: 4009 下载积分: PB币 -1 请勿使用多线程下载工具下载论坛附件! 为避免权限问题,你可以把你需要Patch的Kext复制到桌面 在桌面的Kext上单击右键“显示包内容”之后找到Info.plist Snip20120427_2.png 2012-4-27 08:54 上传 下载附件 (216.51 KB) 请勿使用多线程下载工具下载论坛附件! Snip20120427_3.png 2012-4-27 08:54 上传 下载附件 (77 KB) 请勿使用多线程下载工具下载论坛附件! Snip20120427_5.png 2012-4-27 09:03 上传 下载附件 (260.14 KB) 请勿使用多线程下载工具下载论坛附件!

原文链接:http://www.insanelymac.com/forum/index.php?showtopic=277192

Credits to  cili0@InsanelyMac

启动时如何键入参数?

步骤与引导有关:

a.带有图形界面的变色龙: 倒计时显示时马上按下除回车键的任意一个键选择你要启动的系统,现在就可以键入你想要键入的参数(例如-v) 你所输入的内容将在屏幕左下角显示,按回车开始启动系统

b.Darwin引导 / 没有引导界面的变色龙:

出现倒计时时按F8停止倒计时

使用方向键选择你需要启动的系统

输入需要的启动参数,按下回车开始启动

原文链接:http://www.insanelymac.com/forum/index.php?showtopic=278928

Credits to  .lostandstupid@InsanelyMac Lion启动缓慢以及新的缓存机制UseKernelCache

从10.7.0开始,Lion的缓存机制(kextcache mechanism)发生了改变 使用"Extensions.mkext"的机制已经成为过去了 新系统默认采用的是内核缓存(kernelcache),而内核缓存和之前mkext文件处在同一位置(/System/Library/Caches/com.apple.kext.caches/Startup) 系统启动速度缓慢是因为变色龙没有使用这些缓存 变色龙默认设置UseKernelCache=No 即不使用内核缓存而是一个一个的加载驱动所以启动速度缓慢 (也正因此,能够同时加载 /Extra/Extensions和/System/Library/Extensions下的驱动,效果和-f参数是一样的) 如果想让启动速度变快的话,可以使用UseKernelCache=Yes的参数设置 如图,可以用ChameleonWizard软件直接设置: Snip20120512_2.png 2012-5-12 17:25 上传 下载附件 (156.06 KB) 请勿使用多线程下载工具下载论坛附件! 不过需要注意的是,如果你使用了这个参数那么你所有的第三方驱动必须都存在于/System/Library/Extensions下 因为 /Extra/Extensions下的驱动将被忽略 你可以在终端里面输入以下命令来手动强行执行重建缓存

sudo kextcache -system-prelinked-kernel sudo kextcache -system-caches复制代码也可以用下面的指令达到同样的效果sudo touch /System/Library/Extensions复制代码 原文链接:http://www.insanelymac.com/forum/index.php?showtopic=279023Credits to  PookyMacMan@InsanelyMac 是否需要重建缓存,又该如何重建?

重建缓存是十分必要的

无论如何,只要你安装了新的kext,如果你不重建缓存,这将使你安装的kext无效

/System/Library/Extensions 与 /Extra/Extensions都有各自的缓存

无论你安装kext到以上两个路径的哪个,你都必须要相应的重建缓存

如果你的kext安装到/System/Library/Extensions

那么你必须重建/System/Library/Extensions 的缓存,但是你不必担心/Extra/Extensions的缓存,反之亦然

更新缓存的方法,主要有下面这两种:

1.图形化界面应用程序

你可以下载Kext Utility并双击运行(传送门)

它能够为10.5 Leopard版本以上的系统自动重建/System/Library/Extensions 与 /Extra/Extensions下的缓存

这个程序对新手来说是最好不过的,但是有时它也会出点小问题

偶尔可能不能够正常的重建缓存,尤其是针对Lion系统

2.命令行方式(通过终端输入命令的方法)

分两类情况讨论,取决于要重建缓存的路径

/Extra/Extensions 在终端中输入以下指令:sudo kextcache -v 1 -a i386 -a x86_64 -m /Extra/Extensions.mkext /Extra/Extensions复制代码/System/Library/Extensions

这取决于你的系统版本:

10.4 Tiger/10.5 Leopard 进入/System/Library/下,把 Extensions.mkext 和 Extensions.kextcache删除就可以了

10.6 Snow Leopard

和 /Extra/Extensions的指令差不多,只不过路径要做相应修改

sudo kextcache -v 1 -a i386 -a x86_64 -m /System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext /System/Library/Extensions复制代码

10.7 Lion

以下两种,任选一种即可:

sudo kextcache -system-prelinked-kernel sudo kextcache -system-caches复制代码或者 sudo touch /System/Library/Extensions复制代码 原文链接:http://www.insanelymac.com/forum/index.php?showtopic=278624

Credits to  PookyMacMan@InsanelyMac

出现五国,提示“PCI Configuration Begin“,如何解决?

首先上一张五国图片:

1234.png 2012-5-3 10:30 上传 下载附件 (12.44 KB) 请勿使用多线程下载工具下载论坛附件!

解决方法取决于你的系统:

1.如果你是Intel酷睿(Core)或至强(Xeon)系列的CPU的话

当你进入开机选择菜单时(按任意键显示开机选项),按下一个键并输入:

npci=0x2000复制代码如果上述方法不行的话,试试npci=0x3000复制代码如果仍然不行,在上述参数之前加上PCIRootUID=1,例如:PCIRootUID=1 npci=0x2000复制代码同样这个不行的话,换用PCIRootUID=1 npci=0x3000复制代码2.如果你的CPU是AMD或者Intel非酷睿(Core)系列的话 换用10.6.8的内核(内核版本为10.8.0) 这个内核可在Nawocom的博客上找到,传送门 或者论坛内,Crazybirdy也有相关帖子:传送门 Q18内含下载 (刚刚我谷歌了一下,发现这个博客里面内容还是挺多的 有兴趣的会员也可以多留意留意,博客地址:http://blog.nawcom.com/) 3.如果你换用了内核之后,还是不行(遇到第一种情况的会员,不建议更换内核) 则继续尝试方案1中,添加npci指令的方法,如:npci=0x2000                  等等复制代码 原文链接:http://www.insanelymac.com/forum/index.php?showtopic=278692 Credits to  PookyMacMan@InsanelyMac 出现五国,提示”Waiting for DSMOS“,如何解决?

这是由于FakeSMC.kext没有正常加载所引起的

(如果是老虎(Tiger)的话,则是dsmos.kext的问题)

使用最新版的FakeSMC并安装到/E/E下

(如果你使用的是dsmos.kext,也有专门针对Tiger的FakeSMC)

如果你使用启动光盘引导,进入启动光盘的ISO镜像,并替换FakeSMC

总而言之,就是要替换FakeSMC,无论你是硬盘引导还是ISO引导

虽然原文作者推荐使用最新的FakeSMC,但是结合我自己和部分坛友的经验

还是认为,安装系统的时候就单单使用2.5版的FakeSMC

安装完了之后,可以根据你的需要,看是否要选用最新的FakeSMC

以上版本的FakeSMC下载链接: 点我传送

出现五国,提示”DSMOS has arrived“,如何解决?

这是显卡驱动的问题

首先,如果你设置了变色龙参数GraphicsEnabler=yes的话,把它改为No

如果这样还不能解决问题,则以-s的单用户模式进入,输入以下指令

/sbin/mount -uw mkdir ~/bkupgfx cd /System/Library/Extensions复制代码(新手建议手抄或者拍下来,请确保代码的正确性启动时如何键入启动参数在上面已经说明) 下面的代码,会在当前用户的目录中生成一个名为”bkupgfx“的文件夹 bkupgfx=backup graphics(显卡备份),执行之后所有的mv(move移动)指令后 驱动均会保存在这个文件夹中,为后续使用,附上两张截图: Snip20120505_2.png 2012-5-5 10:34 上传 下载附件 (32.42 KB) 请勿使用多线程下载工具下载论坛附件! Snip20120505_4.png 2012-5-5 10:34 上传 下载附件 (167.28 KB) 请勿使用多线程下载工具下载论坛附件! 如果你是N卡,继续输入mv -R NVD*.kext ~/bkupgfx复制代码如果你是A卡,继续输入mv -R ATI*.kext ~/bkupgfx复制代码如果你是Intel的集显,则输入mv -R AppleIntelGMA* ~/bkupgfx mv -R AppleIntelHD* ~/bkupgfx mv -R AppleIntelSNB* ~/bkupgfx mv -R AppleIntelIntegratedFramebuffer.kext ~/bkupgfx复制代码最后输入 exit 退出即可 原文作者认为最后exit,继续启动过程而我则认为或许输入reboot,重新启动之后再以 -v -f 进入会更稳妥一点,保险起见 论坛的五国置顶帖也有这个问题的解决方法,同样值得借鉴~ https://bbs.pcbeta.com/viewthread-863656-1-1.html   Q23


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3